/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Comun;

import javax.swing.JOptionPane;
import javax.swing.table.DefaultTableModel;
//import org.jposition.Marker;

/**
 *
 * @author Richard
 */
public class GUI {

    public static String mapKey = "ABQIAAAAnstjZVDKScMK7UPsgQC6BRS6yukL17Lp5OSSXr1qUeEAwHckjxQ2n9JJMPP7A1TZNSk6Fc_KW3Hxw";
    public static double mapDesplazamiento = 0.005;
    public static int mapZoom = 15;    
    //public static String mapGrosorMarcador = Marker.SizeMid;
    //public static String mapColorMarcadorAntena = Marker.ColorRed;
    //public static String mapColorMarcadorNodo = Marker.ColorBlue;
    //public static String mapColorMarcadorEstacion = Marker.ColorGreen;
    public static byte mapGrosorRuta = 3;
    public static char mapSimboloAntena = 'a';
    public static char mapSimboloNodo = 'c';
    public static char mapSimboloEstacion = 'e';

    public static void msjAlerta(String msj) {
        javax.swing.JOptionPane.showMessageDialog(null, msj, "Mensaje", 1);
    }

    public static boolean msjPreguntaSiNo(String mensaje) {
        int intConfirma = JOptionPane.showConfirmDialog(null, mensaje, "Pregunta", JOptionPane.YES_NO_OPTION);
        return (intConfirma == JOptionPane.YES_OPTION);
    }

    /**
     * Obtiene un ID de una tabla con checkbox (Las columnas se cuentan desde cero)
     * @param numColCheck # de columna donde se encuentran los checkbox
     * @param numColId # de columna donde se encuentran los ID
     * @param objmodelo DefaultTableModel de una tabla
     * @return ID seleccionado, en caso de error devuleve -1
     */
    public static int obtenerIdObjSeleccionado(int numColCheck, int numColId, DefaultTableModel objmodelo) {
        if (objmodelo == null) {
            return -1;
        }
        int intNumElemSelec = 0;
        int intRpta = 0;
        boolean masDeUno = false;
        String srtRpta;
        for (int i = 0; i < objmodelo.getRowCount(); i++) {
            if (objmodelo.getValueAt(i, numColCheck).equals(true)) {
                if (intNumElemSelec > 0) {
                    masDeUno = true;
                    break;
                }
                srtRpta = objmodelo.getValueAt(i, numColId).toString();
                intRpta = Integer.parseInt(srtRpta);
                intNumElemSelec++;
            }
        }
        if (intNumElemSelec == 0) {
            return -1;
        }
        return (masDeUno) ? (-1) : (intRpta);
    }

    /**
     * Obtiene un conjunto de IDs de una tabla con checkbox (Las columnas se cuentan desde cero)
     * @param numColCheck # de columna donde se encuentran los checkbox
     * @param numColId # de columna donde se encuentran los ID
     * @param objmodelo DefaultTableModel de una tabla
     * @return arreglo de enteros con los IDs seleccionados, en caso de error devuleve NULL
     */
    public static int[] obtenerIdsObjsSeleccionados(int numColCheck, int numColId, DefaultTableModel objmodelo) {
        if (objmodelo == null) {
            return null;
        }
        int[] idObjsSeleccionados = new int[objmodelo.getRowCount()];
        int numFilas = objmodelo.getRowCount();
        if (numFilas == 0) {
            return null;
        }
        String srtRpta;
        boolean boolNoexisteSel = true;
        for (int i = 0; i < objmodelo.getRowCount(); i++) {
            if (objmodelo.getValueAt(i, numColCheck).equals(true)) {
                srtRpta = objmodelo.getValueAt(i, numColId).toString();
                idObjsSeleccionados[i] = Integer.parseInt(srtRpta);
                boolNoexisteSel = false;
            }
        }
        if (boolNoexisteSel) {
            return null;
        }
        return idObjsSeleccionados;
    }
}
